home *** CD-ROM | disk | FTP | other *** search
- #include <exec/types.h>
- #include <exec/memory.h>
- #include <proto/exec.h>
- #include <intuition/intuition.h>
- #include <intuition/gadgetclass.h>
- #include <proto/intuition.h>
- #include <libraries/gadtools.h>
- #include <proto/gadtools.h>
- #include <dos/dos.h>
- #include <proto/dos.h>
- #include <graphics/gfx.h>
- #include <clib/graphics_protos.h>
-
- #include <clib/alib_protos.h>
- #include <ctype.h>
- #include <stdlib.h>
- #include <string.h>
- #include "rp.h"
-
- #define ALL_REACTION_CLASSES
- #include <reaction/reaction.h>
- #include <clib/texteditor_protos.h>
- #include <gadgets/texteditor.h>
- #include <pragmas/texteditor_pragmas.h>
- #include <gadgets/chooser.h>
- #include <pragmas/chooser_pragmas.h>
-
- #define SUBSYSTEMS 128 // counting from 0
- #define CPUS 4 // counting from 0
- #define MODELS 13 // counting from 0
- #define AGNUSES 4 // counting from 0
- #define MAXELEMENTS 4 // counting from 0
-
- MODULE void refreshpv(void);
- MODULE void updatereportgadgets(void);
- MODULE void readreportgadgets(void);
- MODULE ULONG Hook1Func(struct Hook *h, VOID *o, VOID *msg);
- MODULE void updateemail(void);
-
- AGLOBAL struct ReportStruct report;
-
- MODULE struct Gadget* report_gadgets[GIDS_1 + 1];
- MODULE ABOOL SubsystemNodes = FALSE;
- MODULE struct List SubsystemList;
-
- MODULE struct
- { STRPTR friendly;
- STRPTR unfriendly;
- } subsystems[SUBSYSTEMS + 1] =
- { {"3D Look", "new.look" },
- {"A590", "A2091.A590" },
- {"A2013", "A2013" },
- {"A2065", "A2065" },
- {"A2090", "A2090.A2090A" },
- {"A2090A", "A2090.A2090A" },
- {"A2091", "A2091" },
- {"A2232", "A2232" },
- {"A2300", "A2300" },
- {"A2410", "A2410" },
- {"A2620", "A2620" },
- {"A2630", "A2630" },
- {"A3000", "A3000" },
- {"A4091", "A4091" },
- {"AmigaBASIC", "AmigaBasic" },
- {"AGA chipset", "aa.chips" },
- {"ALink", "alink" },
- {"amiga.lib", "amiga.lib" },
- {"AmigaGuide", "amigaguide" },
- {"AmigaTerm", "amigaterm" },
- {"AmigaVision", "amigavision" },
- {"AppShell", "appshell" },
- {"ARexx", "arexx" },
- {"Art", "art" },
- {"AS225", "as225" },
- {"ASL.library", "asl.library" },
- {"audio.device", "audio.device" },
- {"AUTOCONFIG", "autoconfig" },
- {"Battery-backed clock", "battclock" },
- {"Battery-backed memory", "battmem" },
- {"Bootstrap", "strap" },
- {"BridgeBoard", "bridgeboard" },
- {"BRU", "bru" },
- {"bullet.library", "bullet" },
- {"C: programs", "cdos.command" },
- {"CD.device", "cd.device" },
- {"CD32 hardware", "cdgs" },
- {"CDFileSystem", "cdfilesystem" },
- {"CDTV", "cdtv" },
- {"CDTV.device", "cdtv.device" },
- {"cdui", "cdui" },
- {"CIA.resource", "cia.resource" },
- {"CLI", "shell" },
- {"clipboard.device", "clipboard" },
- {"Commodities", "commodities" },
- {"CON-Handler", "con-handler" },
- {"console.device", "console.device" },
- {"Custom chipset", "custom.chips" },
- {"Datatypes", "datatypes" },
- {"debug.lib", "debug.lib" },
- {"Developer support", "devsupport" },
- {"disk.resource", "disk.resource" },
- {"diskfont.library", "diskfont" },
- {"DOS.library", "dos.library" },
- {"Early Startup Control", "bootmenu" },
- {"Envoy", "envoy" },
- {"Exec.library", "exec" },
- {"expansion.library", "expansion" },
- {"filesystem", "filesystem" },
- {"filesystem.resource", "filesysres" },
- {"Fonts", "fonts" },
- {"Fountain", "fountain" },
- {"gadget.classes", "gadget.classes" },
- {"GadTools.library", "gadtools" },
- {"gameport.device", "gameport" },
- {"Genlock", "genlock" },
- {"Graphics", "graphics" },
- {"Hardware", "hardware" },
- {"HDBackup", "hdbackup" },
- {"HDToolBox", "hdtoolbox" },
- {"icon.library", "icon.library" },
- {"IconEdit", "iconedit" },
- {"IDE.device", "ide.device" },
- {"IFFParse.library", "iffparse" },
- {"input.device", "input.device" },
- {"Installer", "installer" },
- {"IntelliFont", "fountain" },
- {"Intuition.library", "intuition" },
- {"IPrefs", "iprefs" },
- {"Keyboard", "keyboard" },
- {"keymap.library", "keymap" },
- {"Keymaps", "keymaps" },
- {"layers.library", "layers" },
- {"locale.library", "locale.library" },
- {"lowlevel.library", "lowlevel" },
- {"Maths: FFP", "mathffp" },
- {"Maths: IEEE Double Precision", "mathieeedoub" },
- {"Maths: IEEE Single Precision", "mathieeesing" },
- {"Maths: IEEE", "mathieee" },
- {"MicroEMACS", "microemacs" },
- {"Monitors", "monitors" },
- {"MultiView", "multiview" },
- {"nonvolatile", "nonvolatile" },
- {"parallel.device", "parallel.device" },
- {"PCMCIA", "creditcard" },
- {"PORT-Handler", "port-handler" },
- {"potgo.resource", "potgo.resource" },
- {"Preferences", "preferences" },
- {"Printer drivers", "printer.driver" },
- {"printer.device", "printer.device" },
- {"QUEUE-Handler", "queue-handler" },
- {"RAM-Handler", "ram-handler" },
- {"ramlib", "ramlib" },
- {"realtime", "realtime" },
- {"Report+", "report+" },
- {"Resources", "resource" },
- {"ROM Kernel Manuals", "rkm" },
- {"ROMWack", "wack" },
- {"Saga: Age of Heroes", "saga" },
- {"SANA-2", "sana2" },
- {"Scripts", "script" },
- {"SCSI.device", "scsi.device" },
- {"serial.device", "serial.device" },
- {"Shell", "shell" },
- {"Startup", "startup" },
- {"System/ programs", "system.command" },
- {"TCP/IP", "as225" },
- {"timer.device", "timer.device" },
- {"ToolMaker", "toolmaker" },
- {"Tools/ programs", "tools" },
- {"trackdisk.device", "trackdisk" },
- {"UNIX", "unix" },
- {"Unsure", "" },
- {"User manuals", "userdocs" },
- {"Utilities/ programs", "util.command" },
- {"utility.library", "utility.library" },
- {"Wack", "wack" },
- {"Workbench", "workbench" },
- {"Worm Wars", "wormwars" }
- };
- MODULE STRPTR TypeOptions[4] =
- { "System Software/Hardware Bug",
- "3rd Party Product Compatibility",
- "Enhancement Request",
- NULL
- };
- MODULE STRPTR SeverityOptions[5] =
- { (STRPTR) "Crashes, hangs or corrupts data",
- (STRPTR) "Behaves incorrectly",
- (STRPTR) "Cosmetic problem",
- (STRPTR) "Works correctly",
- NULL
- };
- MODULE STRPTR AgnusOptions[AGNUSES + 2] =
- { (STRPTR) "AGA",
- (STRPTR) "ECS PAL",
- (STRPTR) "ECS NTSC",
- (STRPTR) "OCS PAL",
- (STRPTR) "OCS NTSC",
- NULL
- };
- MODULE STRPTR CPUOptions[CPUS + 2] =
- { (STRPTR) "68020",
- (STRPTR) "68030",
- (STRPTR) "68040",
- (STRPTR) "68060",
- (STRPTR) "PowerPC",
- NULL
- };
- MODULE STRPTR ModelOptions[MODELS + 2] =
- { (STRPTR) "A500",
- (STRPTR) "A500+",
- (STRPTR) "A600",
- (STRPTR) "A1000",
- (STRPTR) "A1200",
- (STRPTR) "A1500",
- (STRPTR) "A2000",
- (STRPTR) "A2500",
- (STRPTR) "A3000",
- (STRPTR) "A4000",
- (STRPTR) "CDTV",
- (STRPTR) "CD32",
- (STRPTR) "DraCo",
- (STRPTR) "Emulator",
- NULL
- };
-
- IMPORT ULONG fillcolour, offset;
- IMPORT TEXT aslresult[PATHNAMEFIELD + 1],
- weekdaystring[10],
- datestring[10],
- timestring[9],
- cpuline[VLONGFIELD + 1];
- IMPORT struct SharedStruct shared;
- IMPORT TEXT IOBuffer[LONGESTFIELD + 1];
- IMPORT SBYTE page;
- IMPORT ABOOL certified, fillwindows;
- IMPORT TEXT string[PATHNAMEFIELD + 1];
- IMPORT struct Window* MainWindowPtr;
- IMPORT struct Menu* MenuPtr;
- IMPORT struct Screen* ScreenPtr;
- IMPORT struct Library* TextEditorBase;
- IMPORT Object* WinObject[FUNCTIONS + 1];
- IMPORT struct VisualInfo* VisualInfoPtr;
-
- /* report.textfield[] are:
- 0: brief bug description
- 1: bug generation procedure or example
- 2: if this works differently on other versions or hardware, explain
- 3: what developer is doing in that area of HW or SW
- 4: related problems
- 5: enhancement request */
-
- AGLOBAL void report1(void)
- { struct Hook Hook1Struct;
-
- InitHook(&Hook1Struct, Hook1Func, NULL);
-
- /* Create the window object. */
- lockscreen();
-
- if (!(WinObject[1] =
- NewObject
- ( WINDOW_GetClass(), NULL,
- WA_PubScreen, ScreenPtr,
- WA_ScreenTitle, "Report+",
- WA_Title, "Report+: Bug Report Editor (Page 1 of 2)",
- WA_Activate, TRUE,
- WA_DepthGadget, TRUE,
- WA_DragBar, TRUE,
- WA_CloseGadget, TRUE,
- WA_SizeGadget, TRUE,
- WA_IDCMP, IDCMP_RAWKEY,
- WINDOW_IDCMPHook, &Hook1Struct,
- WINDOW_IDCMPHookBits, IDCMP_RAWKEY,
- WINDOW_MenuStrip, MenuPtr,
- WINDOW_Position, WPOS_CENTERSCREEN,
- WINDOW_ParentGroup, report_gadgets[GID_1_LY2] =
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_SpaceOuter, TRUE,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_SpaceOuter, TRUE,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_FIELD,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Summary:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild, report_gadgets[GID_1_ST1] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST1,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.summary,
- STRINGA_MinVisible, 15,
- STRINGA_MaxChars, LONGFIELD,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Email to:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild, report_gadgets[GID_1_ST2] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST2,
- STRINGA_TextVal, "",
- GA_ReadOnly, TRUE,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Type:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild, report_gadgets[GID_1_CH1] =
- NewObject
- ( CHOOSER_GetClass(), NULL,
- GA_ID, GID_1_CH1,
- GA_RelVerify, TRUE, // otherwise we won't hear the gadget
- CHOOSER_PopUp, TRUE,
- CHOOSER_LabelArray, TypeOptions,
- CHOOSER_Selected, (WORD) report.type,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Severit_y:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild, report_gadgets[GID_1_CH2] =
- NewObject
- ( CHOOSER_GetClass(), NULL,
- GA_ID, GID_1_CH2,
- GA_RelVerify, TRUE, // otherwise we won't hear the gadget
- CHOOSER_PopUp, TRUE,
- CHOOSER_LabelArray, SeverityOptions,
- CHOOSER_Selected, (WORD) report.severity,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Debug tools/wedges:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild, report_gadgets[GID_1_ST3] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST3,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.debug,
- STRINGA_MinVisible, 15,
- STRINGA_MaxChars, LONGFIELD,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Program pathname:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_ST7] =
- NewObject
- ( STRING_GetClass(),NULL,
- GA_ID, GID_1_ST7,
- GA_TabCycle, TRUE,
- STRINGA_TextVal, report.pp,
- STRINGA_MaxChars, PATHNAMEFIELD,
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_BU4] =
- NewObject
- ( NULL, "button.gadget",
- GA_ID, GID_1_BU4,
- GA_RelVerify, TRUE,
- BUTTON_AutoButton,BAG_POPFILE,
- TAG_END),
- CHILD_WeightedWidth, 0,
- TAG_END),
- CHILD_WeightedWidth, 70,
- CHILD_MinWidth, 400,
- TAG_END),
- CHILD_WeightedHeight, 0,
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Versions:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_SpaceOuter, TRUE,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_FIELD,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_KS:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_WB:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Pr_ogram:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_ST4] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST4,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.ks,
- STRINGA_MinVisible, 3,
- STRINGA_MaxChars, 6,
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_ST5] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST5,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.wb,
- STRINGA_MinVisible, 3,
- STRINGA_MaxChars, 6,
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_ST6] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST6,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.pv,
- STRINGA_MinVisible, 3,
- STRINGA_MaxChars, LONGFIELD,
- TAG_END),
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Subsystem:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild, report_gadgets[GID_1_LB1] =
- NewObject
- ( LISTBROWSER_GetClass(),NULL,
- GA_ID, GID_1_LB1,
- GA_RelVerify, TRUE,
- LISTBROWSER_Selected, report.subsystem,
- LISTBROWSER_Labels, (ULONG) &SubsystemList,
- LISTBROWSER_MinVisible,3,
- LISTBROWSER_ShowSelected,TRUE,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 30,
- CHILD_MinWidth, 160,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "3rd Party Product:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_SpaceOuter, TRUE,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_FIELD,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Manufactu_rer:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "N_ame:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Version:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_ST8] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST8,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.thirdmanuf,
- STRINGA_MaxChars, MEDFIELD,
- STRINGA_MinVisible, 10,
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_ST9] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST9,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.thirdname,
- STRINGA_MaxChars, MEDFIELD,
- STRINGA_MinVisible, 10,
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_ST10] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST10,
- GA_TabCycle, TRUE,
- GA_RelVerify, TRUE,
- STRINGA_TextVal, report.thirdver,
- STRINGA_MaxChars, MEDFIELD,
- STRINGA_MinVisible, 10,
- TAG_END),
- TAG_END),
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Configuration:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_SpaceOuter, TRUE,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_FIELD,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_VERT,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Model:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_CH3] =
- NewObject
- ( CHOOSER_GetClass(), NULL,
- GA_ID, GID_1_CH3,
- GA_RelVerify, TRUE,
- CHOOSER_PopUp, TRUE,
- CHOOSER_LabelArray, ModelOptions,
- CHOOSER_Selected, (WORD) report.model,
- CHOOSER_MaxLabels, MODELS + 1,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "CP_U:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_CH4] =
- NewObject
- ( CHOOSER_GetClass(), NULL,
- GA_ID, GID_1_CH4,
- GA_RelVerify, TRUE,
- CHOOSER_PopUp, TRUE,
- CHOOSER_LabelArray, CPUOptions,
- CHOOSER_Selected, (WORD) report.cpu,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Ch_ipset Type:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_CH5] =
- NewObject
- ( CHOOSER_GetClass(), NULL,
- GA_ID, GID_1_CH5,
- GA_RelVerify, TRUE,
- CHOOSER_PopUp, TRUE,
- CHOOSER_LabelArray, AgnusOptions,
- CHOOSER_Selected, (WORD) report.agnus,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_No. of floppies:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_IN1] =
- NewObject
- ( INTEGER_GetClass(), NULL,
- GA_ID, GID_1_IN1,
- GA_RelVerify, TRUE,
- GA_TabCycle, TRUE,
- INTEGER_Number, report.floppies,
- INTEGER_Minimum, 0,
- INTEGER_Maximum, 4,
- INTEGER_MinVisible, 1,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_Chip RAM:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_ST11] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST11,
- GA_RelVerify, TRUE,
- GA_TabCycle, TRUE,
- STRINGA_TextVal, report.chipram,
- STRINGA_MaxChars, 4,
- TAG_END),
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Mb",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- CHILD_WeightedWidth, 0,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Slow_/fast RAM:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_ST12] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST12,
- GA_RelVerify, TRUE,
- GA_TabCycle, TRUE,
- STRINGA_TextVal, report.fastram,
- STRINGA_MaxChars, 4,
- TAG_END),
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "Mb",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- CHILD_WeightedWidth, 0,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "_HD controller:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_ST13] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST13,
- GA_RelVerify, TRUE,
- GA_TabCycle, TRUE,
- STRINGA_TextVal, report.hard,
- STRINGA_MaxChars, MEDFIELD,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_VertAlignment, LALIGN_CENTER,
- LAYOUT_HorizAlignment,LALIGN_CENTER,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddImage,
- NewObject
- ( LABEL_GetClass(), NULL,
- LABEL_Text, "E_xpansion cards:",
- LABEL_Justification, LJ_RIGHT,
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 50,
- LAYOUT_AddChild, report_gadgets[GID_1_ST14] =
- NewObject
- ( STRING_GetClass(), NULL,
- GA_ID, GID_1_ST14,
- GA_RelVerify, TRUE,
- GA_TabCycle, TRUE,
- STRINGA_TextVal, report.expansion,
- STRINGA_MaxChars, LONGFIELD,
- TAG_END),
- CHILD_WeightedWidth, 50,
- TAG_END),
- TAG_END),
- TAG_END),
- TAG_END),
- CHILD_WeightedWidth, 70,
- TAG_END),
- LAYOUT_AddChild,
- NewObject
- ( LAYOUT_GetClass(), NULL,
- LAYOUT_Orientation, LAYOUT_ORIENT_HORIZ,
- LAYOUT_DeferLayout, TRUE,
- LAYOUT_BevelStyle, BVS_NONE,
- LAYOUT_AddChild, report_gadgets[GID_1_BU2] =
- NewObject
- ( NULL, "button.gadget",
- GA_ID, GID_1_BU2,
- GA_RelVerify, TRUE,
- GA_Text, "Sende_r...",
- TAG_END),
- LAYOUT_AddChild, report_gadgets[GID_1_BU3] =
- NewObject
- ( NULL, "button.gadget",
- GA_ID, GID_1_BU3,
- GA_RelVerify, TRUE,
- GA_Text, "Other pa_ge...",
- TAG_END),
- TAG_END),
- CHILD_WeightedHeight, 0,
- TAG_END),
- TAG_END)))
- { rq("Can't create ReAction gadgets!");
- }
- unlockscreen();
- openwindow();
-
- OnMenu(MainWindowPtr, FULLMENUNUM(MN_PROJECT, IN_NEW, NOSUB));
- OnMenu(MainWindowPtr, FULLMENUNUM(MN_PROJECT, IN_OPEN, NOSUB));
- OnMenu(MainWindowPtr, FULLMENUNUM(MN_PROJECT, IN_SAVE, NOSUB));
- OnMenu(MainWindowPtr, FULLMENUNUM(MN_PROJECT, IN_SAVEAS, NOSUB));
-
- updatereportgadgets();
- ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST1]);
-
- loop();
- readreportgadgets();
- closewindow();
- }
-
- MODULE void readreportgadgets(void)
- { STRPTR stringptr;
-
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST1], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.summary, stringptr);
-
- if (report.type == COM)
- { if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST8], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.thirdmanuf, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST9], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.thirdname, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST10], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.thirdver, stringptr);
- } elif (report.type == BUG)
- { if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST7], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.pp, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST6], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.pv, stringptr);
- }
- if (report.type != ENH)
- { if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST4], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.ks, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST5], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.wb, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST3], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.debug, stringptr);
- }
-
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST11], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.chipram, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST12], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.fastram, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST13], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.hard, stringptr);
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST14], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.expansion, stringptr);
- if (!(GetAttr
- ( INTEGER_Number, report_gadgets[GID_1_IN1], (ULONG *) &report.floppies
- )))
- { rq("Unsupported inquiry!"); // should never happen
- } }
-
- AGLOBAL void savereport(ABOOL saveas)
- { /* # Subject: <subject><LF>
- # Type: bug|compat|enhancement<LF>
- 1,3 # Subsystem: <subsystem><LF>
- 2 # ProductName: <name> (vers=<version>)
- 2 # ProductInfo: :<manufacturer>:
- # Severity: a|b|c|ok|e
- 1 # Release: KS=<version>,WB=<version>,Program=<version>
- 2 # Release: KS=<version>,WB=<version>
- # Date: <weekday> dd-Mon-yy hh:mm:ss
- # Refer: <refer>
- # Path: <path>
- # ReferID: <referid>
- # Config: <config>
- 1,2a-c ### BRIEF BUG DESCRIPTION:
- 1,2a-c ### BUG GENERATION PROCEDURE OR EXAMPLE:
- 1,2 ### ALSO RUNNING:
- <debug>
- 1,2 ### IF THIS WORKS DIFFERENTLY ON OTHER VERSIONS OR HARDWARE,
- EXPLAIN:
- 2a-c ### WHAT DEVELOPER IS DOING IN THAT AREA OF SW OR HW:
- 1,2a-c ### RELATED PROBLEMS:
- 3 ### ENHANCEMENT REQUEST: */
-
- readreportgadgets();
-
- strcpy(IOBuffer, "# Subject: ");
- strcat(IOBuffer, report.summary);
- strcat(IOBuffer, "\n# Type: ");
- if (report.type == BUG)
- strcat(IOBuffer, "bug");
- elif (report.type == COM)
- strcat(IOBuffer, "compat");
- else /* assumes (report.type == ENH) */
- strcat(IOBuffer, "enhancement");
- strcat(IOBuffer, "\n");
- if (report.type == BUG || report.type == ENH)
- { strcat(IOBuffer, "# Subsystem: ");
- strcat(IOBuffer, subsystems[report.subsystem].unfriendly);
- strcat(IOBuffer, "\n");
- } else
- { strcat(IOBuffer, "# ProductName: ");
- strcat(IOBuffer, report.thirdname);
- strcat(IOBuffer, " (vers=");
- strcat(IOBuffer, report.thirdver);
- strcat(IOBuffer, ")\n# ProductInfo: :");
- strcat(IOBuffer, report.thirdmanuf);
- strcat(IOBuffer, ":\n");
- }
- strcat(IOBuffer, "# Severity: ");
- if (report.type == ENH)
- strcat(IOBuffer, "e");
- elif (report.severity == 0)
- strcat(IOBuffer, "a");
- elif (report.severity == 1)
- strcat(IOBuffer, "b");
- elif (report.severity == 2)
- strcat(IOBuffer, "c");
- else /* assumes report.severity == 3 */
- strcat(IOBuffer, "ok");
- strcat(IOBuffer, "\n");
- if (report.type == BUG || report.type == COM)
- { strcat(IOBuffer, "# Release: KS=");
- strcat(IOBuffer, report.ks);
- strcat(IOBuffer, ",WB=");
- strcat(IOBuffer, report.wb);
- if (report.type == BUG)
- { strcat(IOBuffer, ",Program=");
- strcat(IOBuffer, report.pv);
- }
- strcat(IOBuffer, "\n");
- }
-
- getdate();
- strcat(IOBuffer, "# Date: ");
- strcat(IOBuffer, weekdaystring);
- strcat(IOBuffer, " ");
- strcat(IOBuffer, datestring);
- strcat(IOBuffer, " ");
- strcat(IOBuffer, timestring);
- strcat(IOBuffer, "\n");
- strcat(IOBuffer, report.refer);
- strcat(IOBuffer, report.path);
- strcat(IOBuffer, report.referid);
- strcat(IOBuffer, report.config);
- strcat(IOBuffer, "\n");
-
- if (report.type == BUG || (report.type == COM && report.severity != 3))
- { strcat
- ( IOBuffer,
- "### BRIEF BUG DESCRIPTION:\n"
- );
- strcat(IOBuffer, report.textfield[0]);
- strcat
- ( IOBuffer,
- "\n\n### BUG GENERATION PROCEDURE OR EXAMPLE:\n"
- );
- strcat(IOBuffer, report.textfield[1]);
- strcat(IOBuffer, "\n\n");
- }
- if (report.type == BUG || report.type == COM)
- { strcat(IOBuffer, "### ALSO RUNNING:\n");
- strcat(IOBuffer, report.debug);
- strcat
- ( IOBuffer,
- "\n\n### IF THIS WORKS DIFFERENTLY ON "
- "OTHER VERSIONS OR HARDWARE, EXPLAIN:\n"
- );
- strcat(IOBuffer, report.textfield[2]);
- strcat(IOBuffer, "\n\n");
- }
- if (report.type == COM && report.severity != 3)
- { strcat
- ( IOBuffer,
- "### WHAT DEVELOPER IS DOING IN THAT AREA OF HW OR SW:\n"
- );
- strcat(IOBuffer, report.textfield[3]);
- strcat(IOBuffer, "\n\n");
- }
- if (report.type == BUG || (report.type == COM && report.severity != 3))
- { strcat(IOBuffer, "### RELATED PROBLEMS:\n");
- strcat(IOBuffer, report.textfield[4]);
- strcat(IOBuffer, "\n\n");
- } elif (report.type == ENH)
- { strcat(IOBuffer, "### ENHANCEMENT REQUEST:\n");
- strcat(IOBuffer, report.textfield[5]);
- strcat(IOBuffer, "\n\n");
- }
-
- if (!report.output[0] || saveas) // if we need a filename
- { if (saveasl("Save Bug Report", "~(#?.info)"))
- { strcpy(report.output, aslresult);
- writeout(report.output);
- } }
- else
- { writeout(report.output);
- } }
-
- AGLOBAL void report_ra_loop(ULONG gid)
- { switch(gid)
- {
- case GID_1_BU1:
- page = 11;
- break;
- case GID_1_BU2:
- page = 1;
- break;
- case GID_1_BU3:
- page = 12;
- break;
- case GID_1_CH1:
- if (!(GetAttr
- ( CHOOSER_Selected, report_gadgets[GID_1_CH1], (ULONG *) &report.type
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- updatereportgadgets();
- break;
- case GID_1_CH2:
- if (!(GetAttr
- ( CHOOSER_Selected, report_gadgets[GID_1_CH2], (ULONG *) &report.severity
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- if (report.type == BUG && report.severity == 3)
- { report.severity = 0;
-
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH2], MainWindowPtr, NULL,
- CHOOSER_Selected, report.severity
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH2], MainWindowPtr, NULL);
- }
- break;
- case GID_1_CH3:
- if (!(GetAttr
- ( CHOOSER_Selected, report_gadgets[GID_1_CH3], (ULONG *) &report.model
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- break;
- case GID_1_CH4:
- if (!(GetAttr
- ( CHOOSER_Selected, report_gadgets[GID_1_CH4], (ULONG *) &report.cpu
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- break;
- case GID_1_CH5:
- if (!(GetAttr
- ( CHOOSER_Selected, report_gadgets[GID_1_CH5], (ULONG *) &report.agnus
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- break;
- case GID_1_ST7:
- if (report.type == BUG)
- { refreshpv(); // refreshpv() also reads the gadget for us.
- }
- break;
- case GID_1_BU4:
- if (report.type == BUG)
- { if (asl("~(#?.info)"))
- { strcpy(report.pp, aslresult);
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST7], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pp
- );
- refreshpv();
- } }
- break;
- case GID_1_LB1:
- if (report.type != COM)
- { if (!(GetAttr
- ( LISTBROWSER_Selected, report_gadgets[GID_1_LB1], &report.subsystem
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- updateemail();
- }
- break;
- default:
- break;
- } }
-
- MODULE void refreshpv(void)
- { ULONG i;
- BPTR FileHandle;
- STRPTR stringptr;
-
- strcpy(string, "Version ");
- if (!(GetAttr
- ( STRINGA_TextVal, report_gadgets[GID_1_ST7], (ULONG *) &stringptr
- )))
- { rq("Unsupported inquiry!"); // should never happen
- }
- strcpy(report.pp, stringptr);
- strcat(string, report.pp);
-
- if (!(FileHandle = (BPTR) Open("T:ReportPlus.temp", MODE_NEWFILE)))
- rq("Can't open T:ReportPlus.temp for writing!");
- if (!Execute(string, NULL, FileHandle))
- rq("Can't execute Version!");
- if (!Close(FileHandle))
- rq("Can't close T:ReportPlus.temp for writing!");
-
- readordie("T:ReportPlus.temp");
-
- DeleteFile("T:ReportPlus.temp"); /* returns FALSE for failure */
- for (i = 0; i <= MEDFIELD; i++)
- { if (IOBuffer[i] == LF)
- { IOBuffer[i] = 0;
- break;
- } }
- strcpy(report.pv, IOBuffer);
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST6], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pv
- );
- }
-
- AGLOBAL void report_die(void)
- { if (SubsystemNodes)
- { clearreactionlist(&SubsystemList);
- SubsystemNodes = FALSE;
- } }
-
- AGLOBAL void report_init(void)
- { ULONG i;
- struct Node* ListBrowserNodePtr;
-
- NewList(&SubsystemList);
- for (i = 0; i <= SUBSYSTEMS; i++)
- { if (!(ListBrowserNodePtr = AllocListBrowserNode
- ( 1, // columns
- /* LBNCA_ tags are those that apply to the specific column. */
- LBNA_Column, 0,
- LBNCA_Text, subsystems[i].friendly,
- LBNCA_CopyText, TRUE,
- TAG_END
- )))
- { rq("Can't create ReAction listbrowser.gadget node(s)!");
- }
- AddTail(&SubsystemList, ListBrowserNodePtr);
- SubsystemNodes = TRUE;
- }
-
- newreport(FALSE);
- }
-
- MODULE void updatereportgadgets(void)
- { // the following command is only needed when New or Open... is the
- // cause of the update.
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST1], MainWindowPtr, NULL,
- STRINGA_TextVal, report.summary
- ); // summary
-
- if (report.type == BUG && report.severity == 3)
- { report.severity = 0;
- }
-
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH1], MainWindowPtr, NULL,
- CHOOSER_Selected, report.type
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH1], MainWindowPtr, NULL);
- SetGadgetAttrs
- ( report_gadgets[GID_1_LB1], MainWindowPtr, NULL,
- LISTBROWSER_Selected, report.subsystem
- );
- updateemail();
-
- if (report.type == BUG)
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST7], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pp,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_BU4], MainWindowPtr, NULL,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST6], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pv,
- GA_Disabled, FALSE
- );
- } else
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST7], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pp,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_BU4], MainWindowPtr, NULL,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST6], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pv,
- GA_Disabled, TRUE
- );
- }
-
- if (report.type == COM)
- { SetGadgetAttrs
- ( report_gadgets[GID_1_LB1], MainWindowPtr, NULL,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST8], MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdmanuf,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST9], MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdname,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST10],MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdver,
- GA_Disabled, FALSE
- );
- } else
- { SetGadgetAttrs
- ( report_gadgets[GID_1_LB1], MainWindowPtr, NULL,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST8], MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdmanuf,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST9], MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdname,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST10],MainWindowPtr, NULL,
- STRINGA_TextVal, report.thirdver,
- GA_Disabled, TRUE
- );
- }
-
- if (report.type == ENH)
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST3], MainWindowPtr, NULL,
- CHOOSER_Selected, report.debug,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH2], MainWindowPtr, NULL,
- CHOOSER_Selected, report.severity,
- GA_Disabled, FALSE
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH2], MainWindowPtr, NULL);
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST4], MainWindowPtr, NULL,
- STRINGA_TextVal, report.ks,
- GA_Disabled, TRUE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST5], MainWindowPtr, NULL,
- STRINGA_TextVal, report.wb,
- GA_Disabled, TRUE
- );
- } else
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST3], MainWindowPtr, NULL,
- CHOOSER_Selected, report.debug,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH2], MainWindowPtr, NULL,
- CHOOSER_Selected, report.severity,
- GA_Disabled, FALSE
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH2], MainWindowPtr, NULL);
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST4], MainWindowPtr, NULL,
- STRINGA_TextVal, report.ks,
- GA_Disabled, FALSE
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST5], MainWindowPtr, NULL,
- STRINGA_TextVal, report.wb,
- GA_Disabled, FALSE
- );
- } }
-
- AGLOBAL void newreport(ABOOL display)
- { ULONG i, stringoffset, bufferoffset;
- TEXT cpustring[VLONGFIELD + 1];
-
- report.cpu = 0;
- if (cpuline[0] == '?')
- { report.cpu = 0;
- } else
- { stringoffset = 0;
- bufferoffset = 8;
- /* If cpuline[] is full of garbage then this code will cause
- problems. */
- while (cpuline[bufferoffset] != ' ')
- { cpustring[stringoffset] = cpuline[bufferoffset];
- stringoffset++;
- bufferoffset++;
- }
- stringoffset++;
- cpustring[stringoffset] = 0;
-
- for (i = 0; i <= CPUS; i++)
- { if (!stricmp(CPUOptions[i], cpustring))
- { report.cpu = i;
- break;
- } } }
-
- report.floppies = 1;
- report.agnus = 0;
- report.model = 4;
- report.type = 0;
- report.severity = 0;
- report.subsystem = 0;
-
- report.chipram[0] =
- report.fastram[0] =
- report.hard[0] =
- report.debug[0] =
- report.developer[0] =
- report.expansion[0] =
- report.summary[0] =
- report.pv[0] =
- report.pp[0] =
- report.thirdname[0] =
- report.thirdver[0] =
- report.thirdmanuf[0] =
- report.lastname[0] =
- report.firstname[0] =
- report.company[0] =
- report.phone[0] =
- report.email[0] =
- report.refer[0] =
- report.referid[0] =
- report.path[0] =
- report.config[0] =
- report.output[0] = 0;
- if (GetVar("Kickstart", report.ks, 6, NULL) == -1)
- report.ks[0] = 0;
- if (GetVar("Workbench", report.wb, 6, NULL) == -1)
- report.wb[0] = 0;
- for (i = 0; i <= 5; i++)
- { report.textfield[i][0] = 0;
- }
-
- /* Quicker than strcpy(report.foo, ""); is report.foo[0] = 0;
-
- Consider linking bug report generator with ID database to
- automatically generate the list of expansion cards. */
-
- if (display)
- { updatereportgadgets();
- } }
-
- AGLOBAL void openreport(void)
- { if (asl("~(#?.info)"))
- { strcpy(report.output, aslresult);
- loadreport();
- if (page == 11)
- { updatereportgadgets();
- } } }
-
- AGLOBAL void loadreport(void)
- { ULONG i;
-
- /* parse() returns when it has moved along and found the specified
- `ending string'. The contents, since last parse(), before the
- `ending string' are returned in string. */
-
- if (readin(report.output))
- { offset = 0;
- parse("# Subject: "); // skip '# Subject: '
- parse("\n# Type: "); // goto end of '\n# Type: '
- strcpy(report.summary, string);
- parse("\n# ");
- if (!strcmp(string, "bug"))
- { report.type = BUG;
- } elif (!strcmp(string, "compat"))
- { report.type = COM;
- } elif (!strcmp(string, "enhancement"))
- { report.type = ENH;
- }
- if (report.type != COM)
- { parse("Subsystem: ");
- parse("\n");
- for (i = 0; i <= SUBSYSTEMS; i++)
- { if (!strcmp(string, subsystems[i].unfriendly))
- { report.subsystem = i;
- break;
- } } }
- else
- { parse("ProductName: ");
- parse(" (vers=");
- strcpy(report.thirdname, string);
- parse(")\n# ProductInfo: :");
- strcpy(report.thirdver, string);
- parse(":\n");
- strcpy(report.thirdmanuf, string);
- }
- parse("# Severity: ");
- parse("\n# ");
- if (!strcmp(string, "a"))
- { report.severity = 0;
- } elif (!strcmp(string, "b"))
- { report.severity = 1;
- } elif (!strcmp(string, "c"))
- { report.severity = 2;
- } elif (!strcmp(string, "ok"))
- { report.severity = 3;
- } elif (!strcmp(string, "e"))
- { report.type = ENH;
- }
-
- if (report.type != ENH)
- { parse("Release: KS=");
- parse(",WB=");
- strcpy(report.ks, string);
- if (report.type == BUG)
- { parse(",Program=");
- strcpy(report.wb, string);
- parse("\n");
- strcpy(report.pv, string);
- } else
- { // assert(report.type == COM);
- parse("\n");
- strcpy(report.wb, string);
- report.pv[0] = 0;
- }
- } else report.pv[0] = 0;
- parse("# Date: ");
-
- // now sender fields
- parse("# Refer: ");
- parse(",");
- strcpy(report.lastname, string);
- parse(" (");
- strcpy(report.firstname, string);
- parse(" ,phone ");
- strcpy(report.company, string);
- parse(")\n# Path: ");
- strcpy(report.phone, string);
- parse("\n# ReferID: ");
- strcpy(report.email, string);
- parse("\n");
- strcpy(report.developer, string);
-
- // now config fields
- parse("# Config: ");
- parse(",");
- report.model = 4;
- for (i = 0; i <= MODELS; i++)
- { if (!stricmp(string, ModelOptions[i]))
- { report.model = i;
- break; // for speed
- } }
- parse(",A=");
- report.cpu = 0;
- for (i = 0; i <= CPUS; i++)
- { if (!stricmp(string, CPUOptions[i]))
- { report.cpu = i;
- break; // for speed
- } }
-
- parse(",D=");
- if (!stricmp(string, "AA"))
- report.agnus = 0;
- elif (!stricmp(string, "ECS-pal"))
- report.agnus = 1;
- elif (!stricmp(string, "ECS"))
- report.agnus = 2;
- elif (!stricmp(string, "old-pal"))
- report.agnus = 3;
- else /* if (!stricmp(string, "old")) */
- report.agnus = 4;
-
- parse(",RAM=");
- // We will have here "AA", "ECS" or "old", but we don't use this.
-
- parse("megC/");
- strcpy(report.chipram, string);
-
- parse("megF,TD=");
- strcpy(report.fastram, string);
-
- parse(",HD=");
- report.floppies = atol(string);
-
- parse(",");
- strcpy(report.hard, string);
-
- parse("\n");
- strcpy(report.expansion, string);
-
- report.pp[0] = 0;
-
- if (report.type == BUG)
- { parse("### BRIEF BUG DESCRIPTION:\n");
- parse("\n### BUG GENERATION PROCEDURE OR EXAMPLE:\n");
- strcpy(report.textfield[0], string); // bug description
- parse("\n### ALSO RUNNING:\n");
- strcpy(report.textfield[1], string); // bug procedure
- parse("\n### IF THIS WORKS DIFFERENTLY ON OTHER VERSIONS "
- "OR HARDWARE, EXPLAIN:\n");
- strcpy(report.debug, string); // also running
- parse("\n### RELATED PROBLEMS:\n");
- strcpy(report.textfield[2], string); // explain differently
- parsetoend();
- strcpy(report.textfield[3], string); // related problems
- } elif (report.type == COM)
- { if (report.severity != 3)
- { parse("### BRIEF BUG DESCRIPTION:\n");
- parse("\n### BUG GENERATION PROCEDURE OR EXAMPLE:\n");
- strcpy(report.textfield[0], string); // bug description
- parse("\n### ALSO RUNNING:\n");
- strcpy(report.textfield[1], string); // bug procedure
- parse("\n### IF THIS WORKS DIFFERENTLY ON OTHER VERSIONS "
- "OR HARDWARE, EXPLAIN:\n");
- strcpy(report.debug, string); // also running
- parse("\n### WHAT DEVELOPER IS DOING IN THAT AREA OF SW "
- "OR HW:\n");
- strcpy(report.textfield[2], string); // explain differently
- parse("\n### RELATED PROBLEMS:\n");
- strcpy(report.textfield[3], string); // what doing?
- parsetoend();
- strcpy(report.textfield[4], string); // related problems
- } else
- { parse("### BRIEF BUG DESCRIPTION:\n");
- parse("\n### BUG GENERATION PROCEDURE OR EXAMPLE:\n");
- strcpy(report.textfield[0], string); // bug description
- parse("\n### WHAT DEVELOPER IS DOING IN THAT AREA OF SW "
- "OR HW:\n");
- strcpy(report.textfield[1], string); // explain differently
- parse("\n### RELATED PROBLEMS:\n");
- strcpy(report.textfield[2], string); // what doing?
- parsetoend();
- strcpy(report.textfield[3], string); // related problems
- } }
- else
- { // assert(report.type == ENH);
- parse("### ENHANCEMENT REQUEST:\n");
- parsetoend();
- strcpy(report.textfield[0], string);
- }
- updatereportgadgets();
- } }
-
- /* # Subject: <subject><LF>
- # Type: bug|compat|enhancement<LF>
- BUG,ENH # Subsystem: <subsystem><LF>
- COM # ProductName: <name> (vers=<version>)
- COM # ProductInfo: :<manufacturer>:
- # Severity: a|b|c|ok|e
- BUG # Release: KS=<version>,WB=<version>,Program=<version>
- COM # Release: KS=<version>,WB=<version>
- # Date: <weekday> dd-Mon-yy hh:mm:ss
- # Refer: <refer>
- # Path: <path>
- # ReferID: <referid>
- # Config: <config>
- BUG,COMa-c ### BRIEF BUG DESCRIPTION:
- BUG,COMa-c ### BUG GENERATION PROCEDURE OR EXAMPLE:
- BUG,COM ### ALSO RUNNING:
- <debug>
- BUG,COM ### IF THIS WORKS DIFFERENTLY ON OTHER VERSIONS OR HARDWARE,
- EXPLAIN:
- COMa-c ### WHAT DEVELOPER IS DOING IN THAT AREA OF SW OR HW:
- BUG,COMa-c ### RELATED PROBLEMS:
- ENH ### ENHANCEMENT REQUEST: */
-
- AGLOBAL void report2(void)
- { struct Hook Hook1Struct;
- STRPTR textBuffer[MAXELEMENTS + 1] = {NULL, NULL, NULL, NULL, NULL}; // to avoid spurious compiler warnings
- TEXT GadTitle[MAXELEMENTS + 1][VLONGFIELD + 1];
- ULONG i, counter,
- elements = 0; // to avoid spurious compiler warnings
- struct TagItem tag_texteditor[4] =
- { { GA_ID, NULL }, // ti_Data filled later
- { GA_RelVerify, TRUE },
- { GA_TEXTEDITOR_ExportWrap, 75 },
- { TAG_END, NULL }
- }, tag_subcaption[3] =
- { { LABEL_Text, NULL }, // ti_Data filled later
- { LABEL_Justification, LJ_CENTRE },
- { TAG_END, NULL }
- }, tag_button[4] =
- { { GA_ID, GID_1_BU1 },
- { GA_RelVerify, TRUE },
- { GA_Text, (ULONG) "_Other page..."},
- { TAG_END, NULL }
- }, tag_supercaption[6] =
- { { LAYOUT_Orientation, LAYOUT_ORIENT_VERT },
- { LAYOUT_VertAlignment, LALIGN_CENTER },
- { LAYOUT_HorizAlignment, LALIGN_CENTER },
- { LAYOUT_BevelStyle, BVS_NONE },
- { LAYOUT_AddImage, NULL }, // ti_Data filled later
- { TAG_END, NULL }
- }, tag_onlylayout[23] =
- { { LAYOUT_Orientation, LAYOUT_ORIENT_VERT },
- { LAYOUT_DeferLayout, TRUE },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_MinHeight, 80 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_MinHeight, 80 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_MinHeight, 80 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_MinHeight, 80 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_MinHeight, 80 },
- { TAG_END, NULL }
- }, tag_rootlayout[8] =
- { { LAYOUT_Orientation, LAYOUT_ORIENT_VERT },
- { LAYOUT_SpaceOuter, TRUE },
- { LAYOUT_DeferLayout, TRUE },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 100, },
- { LAYOUT_AddChild, NULL }, // ti_Data filled later
- { CHILD_WeightedHeight, 0 },
- { TAG_END, NULL }
- }, tag_window[15] =
- { { WA_PubScreen, NULL }, // ti_Data filled later
- { WA_ScreenTitle, (ULONG) "Report+" },
- { WA_Title, (ULONG) "Report+: Report Details (Page 2 of 2)" },
- { WA_Activate, TRUE },
- { WA_DepthGadget, TRUE },
- { WA_DragBar, TRUE },
- { WA_CloseGadget, TRUE },
- { WA_SizeGadget, TRUE },
- { WA_IDCMP, IDCMP_RAWKEY },
- { WINDOW_IDCMPHook, NULL }, // ti_Data filled later
- { WINDOW_IDCMPHookBits, IDCMP_RAWKEY },
- { WINDOW_MenuStrip, NULL }, // ti_Data filled later
- { WINDOW_Position, WPOS_CENTERSCREEN },
- { WINDOW_ParentGroup, NULL }, // ti_Data filled later
- { TAG_END, NULL }
- };
-
- switch(report.type)
- {
- case BUG:
- strcpy(GadTitle[0], "Brief bug _description:");
- strcpy(GadTitle[1], "_Bug generation procedure or example:");
- strcpy(GadTitle[2], "_If this works differently on other versions or hardware, explain:");
- strcpy(GadTitle[3], "_Related problems:");
- elements = 3;
- break;
- case COM:
- if (report.severity == 3)
- { strcpy(GadTitle[0], "_If this works differently on other versions or hardware, explain:");
- elements = 0;
- } else
- { strcpy(GadTitle[0], "Brief bug _description:");
- strcpy(GadTitle[1], "_Bug generation procedure or example:");
- strcpy(GadTitle[2], "_If this works differently on other versions or hardware, explain:");
- strcpy(GadTitle[3], "_What developer is doing in that area of software or hardware:");
- strcpy(GadTitle[4], "_Related problems:");
- elements = 4;
- }
- break;
- case ENH:
- strcpy(GadTitle[0], "_Enhancement request:");
- elements = 0;
- break;
- default:
- // assert(0);
- break;
- }
-
- /* window
- root-layout
- only-layout
- [super-caption
- sub-caption
- texteditor]...
- button
-
- It's not necessary to use only-layout, a more efficient way is:
-
- window
- root-layout
- [super-caption
- sub-caption
- texteditor]...
- button */
-
- counter = 2;
- for (i = 0; i <= elements; i++)
- { tag_subcaption[0].ti_Data = (ULONG) GadTitle[i];
- tag_texteditor[0].ti_Data = GID_1_TE1 + i;
- tag_supercaption[4].ti_Data = (ULONG) NewObjectA(LABEL_GetClass(), NULL, tag_subcaption);
- tag_onlylayout[counter].ti_Data = (ULONG) NewObjectA(LAYOUT_GetClass(), NULL, tag_supercaption);
- counter += 2;
- tag_onlylayout[counter].ti_Data =
- report_gadgets[GID_1_TE1 + i] = (ULONG) NewObjectA(TEXTEDITOR_GetClass(), NULL, tag_texteditor);
- counter += 2;
- }
- tag_onlylayout[counter].ti_Tag = TAG_END;
-
- tag_rootlayout[3].ti_Data = (ULONG) NewObjectA(LAYOUT_GetClass(), NULL, tag_onlylayout);
- tag_rootlayout[5].ti_Data =
- report_gadgets[GID_1_BU1] = (ULONG) NewObjectA(NULL, "button.gadget", tag_button);
-
- tag_window[13].ti_Data =
- report_gadgets[GID_1_LY1] = (ULONG) NewObjectA(LAYOUT_GetClass(), NULL, tag_rootlayout);
-
- InitHook(&Hook1Struct, Hook1Func, NULL);
- tag_window[9].ti_Data = &Hook1Struct;
- lockscreen();
- tag_window[0].ti_Data = (ULONG) ScreenPtr;
- tag_window[11].ti_Data = MenuPtr;
- WinObject[1] = (ULONG) NewObjectA(WINDOW_GetClass(), NULL, tag_window);
- unlockscreen();
- if (!WinObject[1]) // Object creation successful?
- { rq("Can't create ReAction objects!");
- }
- openwindow();
-
- // Do any necessary imports.
- switch(report.type)
- {
- case BUG:
- SetGadgetAttrs
- ( report_gadgets[GID_1_TE1], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[0]
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_TE2], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[1]
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_TE3], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[2]
- );
- SetGadgetAttrs
- ( report_gadgets[GID_1_TE4], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[4]
- );
- break;
- case COM:
- if (report.severity == 3)
- { SetGadgetAttrs
- ( report_gadgets[GID_1_TE1], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[2]
- ); // if this works differently...
- } else
- { for (i = 0; i <= 4; i++)
- { SetGadgetAttrs
- ( report_gadgets[GID_1_TE1 + i], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[i]
- );
- } }
- break;
- case ENH:
- SetGadgetAttrs
- ( report_gadgets[GID_1_TE1], MainWindowPtr, NULL,
- GA_TEXTEDITOR_Contents, report.textfield[5]
- ); // enhancement request
- break;
- default:
- ; // assert(0);
- break;
- }
-
- /* 0: brief bug description
- 1: bug generation procedure or example
- 2: if this works differently...
- 3: what developer is doing...
- 4: related problems
- 5: enhancement request */
-
- ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE1]);
- loop();
-
- for (i = 0; i <= elements; i++)
- { textBuffer[i] = (STRPTR) DoGadgetMethod(report_gadgets[GID_1_TE1 + i], MainWindowPtr, NULL, GM_TEXTEDITOR_ExportText, NULL);
- }
- switch(report.type)
- {
- case BUG:
- strcpy(report.textfield[0], textBuffer[0]); // brief bug description
- strcpy(report.textfield[1], textBuffer[1]); // bug generation procedure or example
- strcpy(report.textfield[2], textBuffer[2]); // if this works differently...
- strcpy(report.textfield[4], textBuffer[3]); // related problems
- break;
- case COM:
- if (report.severity == 3)
- { strcpy(report.textfield[2], textBuffer[0]); // if this works differently...
- } else
- { strcpy(report.textfield[0], textBuffer[0]); // brief bug description
- strcpy(report.textfield[1], textBuffer[1]); // bug generation procedure or example
- strcpy(report.textfield[2], textBuffer[2]); // if this works differently...
- strcpy(report.textfield[3], textBuffer[3]); // what developer is doing...
- strcpy(report.textfield[4], textBuffer[4]); // related problems
- }
- break;
- case ENH:
- strcpy(report.textfield[5], textBuffer[0]); // enhancement request
- break;
- default:
- ; // assert(0);
- break;
- }
-
- for (i = 0; i <= elements; i++)
- { FreeVec((APTR) textBuffer[i]);
- textBuffer[i] = NULL;
- }
- closewindow();
- }
-
- MODULE ULONG Hook1Func(struct Hook *h, VOID *o, VOID *msg)
- { /* "When the hook is called, the data argument points to the
- window object and message argument to the IntuiMessage." */
-
- UWORD code, qual;
- ULONG scroll = 0;
-
- geta4(); // wait till here before doing anything
- code = ((struct IntuiMessage *) msg)->Code;
- qual = ((struct IntuiMessage *) msg)->Qualifier;
-
- switch(code)
- {
- case SCAN_HELP:
- helpabout();
- break;
- case SCAN_ESCAPE:
- /* Crashes to try to go to page 0, or quit the program, from page
- 12. Must go via page 11 first. Although clicking the close
- gadget to go to page 0 seems to work fine. */
- if (page != 12 && ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT)))
- { cleanexit(EXIT_SUCCESS);
- } elif (page == 11)
- { page = 0;
- } else
- { // assert(page == 12);
- page = 11;
- }
- break;
- case SCAN_UP:
- if (report.type != COM)
- { if (qual & IEQUALIFIER_CONTROL)
- { scroll = LBP_TOP;
- } elif (qual & IEQUALIFIER_LSHIFT || qual & IEQUALIFIER_RSHIFT)
- { scroll = LBP_PAGEUP;
- } else scroll = LBP_LINEUP;
- }
- break;
- case SCAN_DOWN:
- if (report.type != COM)
- { if (qual & IEQUALIFIER_CONTROL)
- { scroll = LBP_BOTTOM;
- } elif (qual & IEQUALIFIER_LSHIFT || qual & IEQUALIFIER_RSHIFT)
- { scroll = LBP_PAGEDOWN;
- } else scroll = LBP_LINEDOWN;
- }
- break;
- case SCAN_A:
- if (page == 11 && report.type == COM)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST9]);
- }
- break;
- case SCAN_B:
- if (page == 12)
- { if (report.type == BUG || (report.type == COM && report.severity != 3))
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE2]);
- } } // "_bug generation procedure or example", when present, is always GID_1_TE2.
- break;
- case SCAN_C:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST11]);
- }
- break;
- case SCAN_D:
- if (page == 11)
- { if (report.type != ENH)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST3]);
- } }
- elif (page == 12)
- { if (report.type == BUG || (report.type == COM && report.severity != 3))
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE1]);
- } } // "brief bug _description", when present, is always GID_1_TE1.
- break;
- case SCAN_E:
- if (page == 12 && report.type == ENH)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE1]);
- } // "_enhancement request", when present, is always GID_1_TE1.
- break;
- case SCAN_H:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST13]);
- }
- break;
- case SCAN_I:
- if (page == 11)
- { if ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT))
- { if (report.agnus == 0)
- report.agnus = AGNUSES;
- else report.agnus--;
- } else
- { if (report.agnus == AGNUSES)
- report.agnus = 0;
- else report.agnus++;
- }
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH5], MainWindowPtr, NULL,
- CHOOSER_Selected, report.agnus
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH5], MainWindowPtr, NULL);
- } elif (page == 12)
- { if (report.type == BUG || (report.type == COM && report.severity != 3))
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE3]);
- } elif (report.type == COM && report.severity == 3)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE1]);
- } }
- break;
- case SCAN_K:
- if (page == 11 && report.type != ENH)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST4]);
- }
- break;
- case SCAN_M:
- if (page == 11)
- { if ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT))
- { if (report.model == 0)
- report.model = MODELS;
- else report.model--;
- } else
- { if (report.model == MODELS)
- report.model = 0;
- else report.model++;
- }
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH3], MainWindowPtr, NULL,
- CHOOSER_Selected, report.model
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH3], MainWindowPtr, NULL);
- }
- break;
- case SCAN_N:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_IN1]);
- }
- break;
- case SCAN_O:
- if (page == 11 && report.type == BUG)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST6]);
- }
- break;
- case SCAN_P:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST7]);
- }
- break;
- case SCAN_R:
- if (page == 11)
- { if (report.type == COM)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST8]);
- } }
- elif (page == 12)
- { if (report.type == BUG)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE4]);
- } elif (report.type == COM && report.severity != 3)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE5]);
- } }
- break;
- case SCAN_S:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST1]);
- }
- break;
- case SCAN_T:
- if (page == 11)
- { if ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT))
- { if (report.type == 0)
- { report.type = 2;
- } else report.type--;
- } else
- { if (report.type == 2)
- { report.type = 0;
- } else report.type++;
- }
- updatereportgadgets();
- }
- break;
- case SCAN_U:
- if (page == 11)
- { if ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT))
- { if (report.cpu == 0)
- report.cpu = CPUS;
- else report.cpu--;
- } else
- { if (report.cpu == CPUS)
- report.cpu = 0;
- else report.cpu++;
- }
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH4], MainWindowPtr, NULL,
- CHOOSER_Selected, report.cpu
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH4], MainWindowPtr, NULL);
- }
- break;
- case SCAN_V:
- if (page == 11 && report.type == COM)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST10]);
- }
- break;
- case SCAN_W:
- if (page == 11)
- { if (report.type != ENH)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST5]);
- } }
- elif (page == 12 && report.type == COM && report.severity != 3)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY1], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_TE3]);
- } // "_what developer is doing...", when present, is always GID_1_TE4.
- break;
- case SCAN_X:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST14]);
- }
- break;
- case SCAN_Y:
- if (page == 11 && report.type != ENH)
- { if ((qual & IEQUALIFIER_LSHIFT) || (qual & IEQUALIFIER_RSHIFT))
- { if (report.severity == 0)
- { report.severity = 3;
- } else report.severity--;
- } else
- { if (report.severity == 3)
- { report.severity = 0;
- } else report.severity++;
- }
- if (report.type == BUG && report.severity == 3)
- { report.severity = 0;
- }
- SetGadgetAttrs
- ( report_gadgets[GID_1_CH1], MainWindowPtr, NULL,
- CHOOSER_Selected, report.severity
- );
- RefreshGadgets((struct Gadget *) report_gadgets[GID_1_CH1], MainWindowPtr, NULL);
- }
- break;
- case SCAN_SLASH:
- if (page == 11)
- { ActivateLayoutGadget(report_gadgets[GID_1_LY2], MainWindowPtr, NULL, (Object) report_gadgets[GID_1_ST12]);
- }
- break;
- case SCAN_PERIOD:
- if (page == 11 && report.type == BUG)
- { if (asl("~(#?.info)"))
- { strcpy(report.pp, aslresult);
- SetGadgetAttrs
- ( report_gadgets[GID_1_ST7], MainWindowPtr, NULL,
- STRINGA_TextVal, report.pp
- );
- refreshpv();
- } }
- break;
- default:
- break;
- }
-
- if (report.type != ENH && (code == SCAN_UP || code == SCAN_DOWN))
- { SetGadgetAttrs
- ( report_gadgets[GID_1_LB1], // pointer to gadget
- MainWindowPtr, // pointer to window (not window object!)
- NULL, // pointer to requester
- LISTBROWSER_Position, scroll, // tags
- TAG_DONE // done
- );
- }
-
- return(1);
- }
-
- MODULE void updateemail(void)
- { if
- ( (!stricmp(subsystems[report.subsystem].unfriendly, "wormwars"))
- || (!stricmp(subsystems[report.subsystem].unfriendly, "report+"))
- || (!stricmp(subsystems[report.subsystem].unfriendly, "saga"))
- )
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST2], MainWindowPtr, NULL,
- STRINGA_TextVal, "amigansoftware@abime.net"
- ); // email to
- } else
- { SetGadgetAttrs
- ( report_gadgets[GID_1_ST2], MainWindowPtr, NULL,
- STRINGA_TextVal, "support@haage-partner.com"
- ); // email to
- } }
-